This application claims the priority of Korean Patent Application No. 2003-52394, filed on Jul. 29, 2003, in the Korean Intellectual Property Office, the disclosure of which is incorporated herein in its entirety by reference.
1. Field of the Invention
The present invention relates to video data coding, and more particularly, to an apparatus and method for variable length coding.
2. Description of the Related Art
As leading international standards for video data coding, there are MPEG-1, MPEG-2, MPEG-4 and H.26X. In order to efficiently compress video data, these standards use coding technologies, such as discrete cosine transform (DCT) using spatial correlation of video data, motion estimation/motion compensation using temporal correlation, and variable length coding (VLC) using occurrence probabilities of data.
FIG. 1 is a block diagram of a prior art video data coder. Referring to FIG. 1, the video data coder includes a DCT transformer 1, a quantizer (Q) 2, a VLC coder (VLC) 3, an inverse quantizer (IQ) 4, an inverse DCT transformer (IDCT) 5, a motion compensator (MC) 6, a motion estimator (ME) 7, and a frame memory 8.
The video data coder as shown in FIG. 1 is manufactured in the form of a dedicated chip by a chip manufacturer, or is implemented by software so that it can be executed by an apparatus such as a computer. Recently, video data coders have been developed in the form of a system-on-chip with an embedded central processing unit (CPU). That is, with respect to characteristics of each of coding steps in the entire video data coding process, some coding steps are implemented as dedicated hardware modules, and other coding steps are implemented as dedicate software modules such that a video data coder can be implemented in the form of a chip integrating hardware and software.
Due to the characteristics of variable length coding, preferably, a module for variable length coding is implemented by a software module so that flexibility can be provided. This is because this flexibility makes modification, update, or addition of a VLC table easier whe in order to support new video data coding standards, the contents of a VLC table used for variable length coding should be modified or a new VLC table should be added. If the module for variable length coding is implemented as a hardware module, the hardware module itself should be newly designed for modification, update, or addition of the VLC table such that time, efforts and expenses increase.
Meanwhile, if the entire variable length coder is implemented by a software module, there is a problem that when the performance of the CPU operating the software module is lowered, a situation where real time data processing is impossible can occur.